f90_iostat: Fortran IOSTAT Module

Contents

Name

f90_iostat - Module providing IOSTAT error codes

Usage

USE F90_IOSTAT

Synopsis

Parameters
IOERR_ARRAY_OF_ARRAY, IOERR_BACKSPACE_FAILED, IOERR_BAD_ACCESS, IOERR_BAD_ACTION, IOERR_BAD_BINARY, IOERR_BAD_BLANKS, IOERR_BAD_BNBZ, IOERR_BAD_CHAR, IOERR_BAD_COMPLEX, IOERR_BAD_DELIM, IOERR_BAD_EDIT, IOERR_BAD_EDIT_FOR_CHARACTER, IOERR_BAD_EDIT_FOR_INTEGER, IOERR_BAD_EDIT_FOR_LOGICAL, IOERR_BAD_EDIT_FOR_REAL, IOERR_BAD_EXPONENT, IOERR_BAD_FORM, IOERR_BAD_HEX, IOERR_BAD_INPUT_EXPONENT, IOERR_BAD_INPUT_INTEGER, IOERR_BAD_INPUT_LOGICAL, IOERR_BAD_INPUT_REAL, IOERR_BAD_INTEGER, IOERR_BAD_INTEGER_LITERAL, IOERR_BAD_LOGICAL, IOERR_BAD_OCTAL, IOERR_BAD_PAD, IOERR_BAD_POSITION, IOERR_BAD_REAL, IOERR_BAD_REC, IOERR_BAD_SCALE, IOERR_BAD_STATUS, IOERR_BAD_UNIT, IOERR_BUFFER_OVERFLOW, IOERR_CANNOT_BACKSPACE, IOERR_CANNOT_KEEP, IOERR_CANNOT_OPEN, IOERR_CANNOT_REWIND, IOERR_CHAR_EDIT_IN_READ, IOERR_CHAR_OVERLAPS_END, IOERR_COMPONENT_NAME_TOO_LONG, IOERR_CORRUPT_UNFORMATTED_FILE, IOERR_DIFFERENT_ACCESS, IOERR_DIFFERENT_ACTION, IOERR_DIFFERENT_FORM, IOERR_DIFFERENT_POSITION, IOERR_DIFFERENT_RECL, IOERR_DIFFERENT_STATUS, IOERR_ENDFILE_TWICE, IOERR_END_OF_DIRECT_ACCESS, IOERR_EOF, IOERR_EOR, IOERR_EXPECTED_COLON, IOERR_EXPECTED_COMMA, IOERR_EXPECTED_EQUALS, IOERR_EXPECTED_INTEGER_VALUE, IOERR_EXPECTED_P, IOERR_EXPECTED_PERIOD, IOERR_EXPECTED_RPAREN, IOERR_FORMAT_MBNZ, IOERR_FORMAT_NO_ENDING_RPAREN, IOERR_FORMAT_NO_LPAREN, IOERR_GROUP_NAME_TOO_LONG, IOERR_INPUT_BUFFER_OVERFLOW, IOERR_INPUT_LIST_TOO_BIG, IOERR_INTEGER1_TOO_BIG, IOERR_INTEGER2_TOO_BIG, IOERR_INTEGER64_TOO_BIG, IOERR_INTEGER_OVERFLOW_REPEAT, IOERR_INTEGER_TOO_BIG, IOERR_INTERNAL_FILE_OVERFLOW, IOERR_MISSING_HOLLERITH_LENGTH, IOERR_NAMELIST_BAD_CHAR, IOERR_NAME_TOO_LONG, IOERR_NEW_FILE_EXISTS, IOERR_NOT_CONNECTED, IOERR_NOT_CONNECTED_NO_FILENAME, IOERR_NOT_DIRECT, IOERR_NOT_FORMATTED, IOERR_NOT_READ, IOERR_NOT_SEQUENTIAL, IOERR_NOT_UNFORMATTED, IOERR_NOT_WRITE, IOERR_NO_AMPERSAND, IOERR_NO_DATA_EDIT_IN_REVERSION, IOERR_NO_EDIT_FOR_REPEAT, IOERR_NO_FILE_WITH_REPLACE, IOERR_NO_INPUT_LOGICAL, IOERR_NO_NAMELIST_GROUP_NAME, IOERR_NO_OLD_FILE, IOERR_NO_RECL, IOERR_NO_SPACING_FOR_X, IOERR_OBJECT_NAME_TOO_LONG, IOERR_OK, IOERR_ONLY_SIGN_FOUND, IOERR_READ_AFTER_WRITE, IOERR_REAL_INPUT_OVERFLOW, IOERR_RECL_LE_ZERO, IOERR_RECORD_TOO_SHORT, IOERR_REPEAT_FOR_BLANK_INTERP, IOERR_REPEAT_FOR_CHAR_EDIT, IOERR_REPEAT_FOR_POSITION, IOERR_REPEAT_FOR_SIGN, IOERR_RW_AFTER_ENDFILE, IOERR_SCRATCH_NAMED, IOERR_SUBFMT_TOO_DEEP, IOERR_SUBSCRIPT_OUT_OF_RANGE, IOERR_SUBSTRING_OUT_OF_BOUNDS, IOERR_TRUNCATE_FAILED, IOERR_UNEXPECTED_COMPONENT, IOERR_UNEXPECTED_FORMAT_END, IOERR_UNEXPECTED_SUBSCRIPT, IOERR_UNKNOWN_COMPONENT, IOERR_UNKNOWN_OBJECT_NAME, IOERR_WRONG_NAMELIST, IOERR_ZERO_LENGTH_INPUT, IOERR_ZERO_REPEAT, IOERR_ZERO_SIZE_INPUT, IOERR_ZERO_STRIDE.

Parameter Description

  INTEGER,PARAMETER :: IOERR_EOR
End of record

  INTEGER,PARAMETER :: IOERR_EOF
End of file

  INTEGER,PARAMETER :: IOERR_OK	
Successful operation

  INTEGER,PARAMETER :: IOERR_BUFFER_OVERFLOW
Buffer overflow on output

  INTEGER,PARAMETER :: IOERR_INTERNAL_FILE_OVERFLOW
Internal file overflow

  INTEGER,PARAMETER :: IOERR_BAD_SCALE
Scale factor out of range

  INTEGER,PARAMETER :: IOERR_BAD_EXPONENT
Exponent too large for w.d format

  INTEGER,PARAMETER :: IOERR_INPUT_BUFFER_OVERFLOW
Record too long for input buffer

  INTEGER,PARAMETER :: IOERR_ZERO_REPEAT
Zero repeat factor in list-directed input

  INTEGER,PARAMETER :: IOERR_BAD_INTEGER
Invalid input for integer editing

  INTEGER,PARAMETER :: IOERR_INTEGER1_TOO_BIG
Input value too large for INTEGER(KIND=1)

  INTEGER,PARAMETER :: IOERR_INTEGER2_TOO_BIG
Input value too large for INTEGER(KIND=2)

  INTEGER,PARAMETER :: IOERR_INTEGER_OVERFLOW_REPEAT
Repeat factor in list-directed input larger than HUGE(0)

  INTEGER,PARAMETER :: IOERR_INTEGER_TOO_BIG
Input value too large for default INTEGER type

  INTEGER,PARAMETER :: IOERR_BAD_REAL
Invalid input for real editing

  INTEGER,PARAMETER :: IOERR_BAD_LOGICAL
Invalid input for logical editing

  INTEGER,PARAMETER :: IOERR_BAD_COMPLEX
Invalid input for complex editing

  INTEGER,PARAMETER :: IOERR_BAD_CHAR
Invalid input for character editing

  INTEGER,PARAMETER :: IOERR_FORMAT_NO_LPAREN
Format specification does not begin with a left parenthesis

  INTEGER,PARAMETER :: IOERR_FORMAT_NO_ENDING_RPAREN
Format specification does not end with a right parenthesis

  INTEGER,PARAMETER :: IOERR_NO_DATA_EDIT_IN_REVERSION
No data edit descriptor in tail of format specification after reversion

  INTEGER,PARAMETER :: IOERR_SUBFMT_TOO_DEEP
Sub-format groups nested too deeply

  INTEGER,PARAMETER :: IOERR_UNEXPECTED_FORMAT_END
Unexpected end of format specification

  INTEGER,PARAMETER :: IOERR_EXPECTED_INTEGER_VALUE
Expected integer literal constant in format specification

  INTEGER,PARAMETER :: IOERR_FORMAT_MBNZ
Field/exponent width or repeat in format specification must be non-zero

  INTEGER,PARAMETER :: IOERR_EXPECTED_PERIOD
Expected decimal point in format specification

  INTEGER,PARAMETER :: IOERR_EXPECTED_P
Expected P following signed integer constant in format specification

  INTEGER,PARAMETER :: IOERR_BAD_BNBZ
Expected N or Z following B in format specification

  INTEGER,PARAMETER :: IOERR_BAD_EDIT
Invalid edit descriptor

  INTEGER,PARAMETER :: IOERR_NO_EDIT_FOR_REPEAT
No edit descriptor following repeat factor

  INTEGER,PARAMETER :: IOERR_REPEAT_FOR_SIGN
Repeat factor given for sign edit descriptor

  INTEGER,PARAMETER :: IOERR_REPEAT_FOR_BLANK_INTERP
Repeat factor given for blank-interpretation edit descriptor

  INTEGER,PARAMETER :: IOERR_MISSING_HOLLERITH_LENGTH
Missing length of H edit descriptor

  INTEGER,PARAMETER :: IOERR_REPEAT_FOR_CHAR_EDIT
Repeat factor given for character string edit descriptor

  INTEGER,PARAMETER :: IOERR_NO_SPACING_FOR_X
No spacing specified for X edit descriptor

  INTEGER,PARAMETER :: IOERR_REPEAT_FOR_POSITION
Repeat factor given for position edit descriptor

  INTEGER,PARAMETER :: IOERR_CHAR_EDIT_IN_READ
Character string edit descriptor used on input

  INTEGER,PARAMETER :: IOERR_BAD_EDIT_FOR_REAL
Invalid edit descriptor for real i/o-list item

  INTEGER,PARAMETER :: IOERR_BAD_EDIT_FOR_INTEGER
Invalid edit descriptor for integer i/o-list item

  INTEGER,PARAMETER :: IOERR_BAD_EDIT_FOR_LOGICAL
Invalid edit descriptor for logical i/o-list item

  INTEGER,PARAMETER :: IOERR_CHAR_OVERLAPS_END
Character string edit descriptor does not terminate before format end

  INTEGER,PARAMETER :: IOERR_ONLY_SIGN_FOUND
Sign in a numeric input field not followed by any digits

  INTEGER,PARAMETER :: IOERR_BAD_INPUT_EXPONENT
Invalid exponent in real input field

  INTEGER,PARAMETER :: IOERR_BAD_INPUT_REAL
Invalid character in real input field

  INTEGER,PARAMETER :: IOERR_BAD_INPUT_INTEGER
Invalid character in integer input field

  INTEGER,PARAMETER :: IOERR_BAD_BINARY
Invalid character in binary integer input field

  INTEGER,PARAMETER :: IOERR_BAD_OCTAL
Invalid character in octal integer input field

  INTEGER,PARAMETER :: IOERR_BAD_HEX
Invalid character in hexadecimal integer input field

  INTEGER,PARAMETER :: IOERR_BAD_EDIT_FOR_CHARACTER
Invalid edit descriptor for character i/o-list item

  INTEGER,PARAMETER :: IOERR_READ_AFTER_WRITE
READ after WRITE with no intervening file positioning

  INTEGER,PARAMETER :: IOERR_BAD_UNIT
Unit number out of range

  INTEGER,PARAMETER :: IOERR_NOT_CONNECTED
Unit is not connected

  INTEGER,PARAMETER :: IOERR_CANNOT_BACKSPACE
File connected to unit is not capable of BACKSPACE

  INTEGER,PARAMETER :: IOERR_NOT_SEQUENTIAL
Unit is not connected for SEQUENTIAL i/o

  INTEGER,PARAMETER :: IOERR_NOT_READ
Unit is not connected for READ action

  INTEGER,PARAMETER :: IOERR_NOT_FORMATTED
Unit is not connected for FORMATTED i/o

  INTEGER,PARAMETER :: IOERR_NOT_WRITE
Unit is not connected for WRITE action

  INTEGER,PARAMETER :: IOERR_NOT_UNFORMATTED
Unit is not connected for UNFORMATTED i/o

  INTEGER,PARAMETER :: IOERR_NOT_CONNECTED_NO_FILENAME
Unit is not connected and no FILE= specifier on OPEN

  INTEGER,PARAMETER :: IOERR_SCRATCH_NAMED
FILE= specifier on OPEN with STATUS='SCRATCH'

  INTEGER,PARAMETER :: IOERR_DIFFERENT_STATUS
OPEN on connected unit has different STATUS= specifier

  INTEGER,PARAMETER :: IOERR_DIFFERENT_ACCESS
OPEN on connected unit has different ACCESS= specifier

  INTEGER,PARAMETER :: IOERR_DIFFERENT_FORM
OPEN on connected unit has different FORM= specifier

  INTEGER,PARAMETER :: IOERR_DIFFERENT_RECL
OPEN on connected unit has different RECL= specifier

  INTEGER,PARAMETER :: IOERR_DIFFERENT_ACTION
OPEN on connected unit has different ACTION= specifier

  INTEGER,PARAMETER :: IOERR_DIFFERENT_POSITION
OPEN on connected unit has different POSITION= specifier

  INTEGER,PARAMETER :: IOERR_BAD_STATUS
Invalid value for STATUS= specifier

  INTEGER,PARAMETER :: IOERR_BAD_ACCESS
Invalid value for ACCESS= specifier

  INTEGER,PARAMETER :: IOERR_BAD_FORM
Invalid value for FORM= specifier

  INTEGER,PARAMETER :: IOERR_BAD_BLANKS
Invalid value for BLANKS= specifier

  INTEGER,PARAMETER :: IOERR_BAD_POSITION
Invalid value for POSITION= specifier

  INTEGER,PARAMETER :: IOERR_BAD_ACTION
Invalid value for ACTION= specifier

  INTEGER,PARAMETER :: IOERR_BAD_DELIM
Invalid value for DELIM= specifier

  INTEGER,PARAMETER :: IOERR_BAD_PAD
Invalid value for PAD= specifier

  INTEGER,PARAMETER :: IOERR_NO_RECL
The RECL= specifier must be given for DIRECT access OPEN

  INTEGER,PARAMETER :: IOERR_CANNOT_KEEP
STATUS='KEEP' is invalid for a SCRATCH file

  INTEGER,PARAMETER :: IOERR_ENDFILE_TWICE
ENDFILE applied twice to unit with no intervening file positioning

  INTEGER,PARAMETER :: IOERR_NAME_TOO_LONG
File name too long

  INTEGER,PARAMETER :: IOERR_NO_OLD_FILE
Cannot find OLD file

  INTEGER,PARAMETER :: IOERR_NEW_FILE_EXISTS
New file already exists

  INTEGER,PARAMETER :: IOERR_CANNOT_REWIND
File connected to unit is not capable of REWIND

  INTEGER,PARAMETER :: IOERR_BACKSPACE_FAILED
BACKSPACE failed to find the beginning of the previous record

  INTEGER,PARAMETER :: IOERR_NOT_DIRECT
Unit is not connected for DIRECT i/o

  INTEGER,PARAMETER :: IOERR_BAD_REC
Record number out of range

  INTEGER,PARAMETER :: IOERR_BAD_INPUT_LOGICAL
Illegal character in LOGICAL input field

  INTEGER,PARAMETER :: IOERR_NO_INPUT_LOGICAL
No value found in LOGICAL input field

  INTEGER,PARAMETER :: IOERR_CANNOT_OPEN
Unknown OPEN failure on unit

  INTEGER,PARAMETER :: IOERR_NO_AMPERSAND
Expected '&' but found C in NAMELIST input

(C is replaced by the erroneous character).

  INTEGER,PARAMETER :: IOERR_GROUP_NAME_TOO_LONG
NAMELIST group name in input is too long

  INTEGER,PARAMETER :: IOERR_WRONG_NAMELIST
Expected NAMELIST group /N1/ but found /N2/

(N1 and N2 are replaced by the relevant NAMELIST group names).

  INTEGER,PARAMETER :: IOERR_NAMELIST_BAD_CHAR
Invalid character C in NAMELIST input

(C is replaced by the erroneous character).

  INTEGER,PARAMETER :: IOERR_OBJECT_NAME_TOO_LONG
NAMELIST group name in input of NAMELIST/N/ is too long

(N is replaced by the erroneous namelist group name).

  INTEGER,PARAMETER :: IOERR_EXPECTED_EQUALS
Expected '=' but found C in NAMELIST input

(C is replaced by the erroneous character).

  INTEGER,PARAMETER :: IOERR_UNKNOWN_OBJECT_NAME
Unknown group object V in input for NAMELIST/N/

(V is replaced by the erroneous group object name, N is replaced by the namelist group name).

  INTEGER,PARAMETER :: IOERR_UNEXPECTED_SUBSCRIPT
Unexpected subscript for object V of NAMELIST/N/

(V is replaced by the object name, N is replaced by the namelist group name).

  INTEGER,PARAMETER :: IOERR_UNEXPECTED_COMPONENT
Unexpected component specifier for object V of NAMELIST/N/

(V is replaced by the object name, N is replaced by the namelist group name).

  INTEGER,PARAMETER :: IOERR_COMPONENT_NAME_TOO_LONG
Component name too long in input for object V of NAMELIST/N/

(V is replaced by the object name, N is replaced by the namelist group name).

  INTEGER,PARAMETER :: IOERR_UNKNOWN_COMPONENT
Unknown component C in input for object V of NAMELIST/N/

(C is replaced by the erroneous component name, V is replaced by the object name, N is replaced by the namelist group name).

  INTEGER,PARAMETER :: IOERR_ARRAY_OF_ARRAY
Array component of array parent in input for object V of NAMELIST/N/

(V is replaced by the object name, N is replaced by the namelist group name).

  INTEGER,PARAMETER :: IOERR_BAD_INTEGER_LITERAL
Invalid integer literal in input for object V of NAMELIST/N/

(V is replaced by the object name, N is replaced by the namelist group name).

  INTEGER,PARAMETER :: IOERR_EXPECTED_COLON
Expected ':' but found 'C' in input for object V of NAMELIST/N/

(C is replaced by the erroneous character, V is replaced by the object name, N is replaced by the namelist group name).

  INTEGER,PARAMETER :: IOERR_ZERO_LENGTH_INPUT
Substring has zero length in input for object V of NAMELIST/N/

(V is replaced by the object name, N is replaced by the namelist group name).

  INTEGER,PARAMETER :: IOERR_SUBSTRING_OUT_OF_BOUNDS
Substring (I:I) out of bounds in input for object V of NAMELIST/N/

(I and J are replaced by the substring bounds, V is replaced by the object name, N is replaced by the namelist group name).

  INTEGER,PARAMETER :: IOERR_EXPECTED_COMMA
Expected ',' but found 'C' in input for object V of NAMELIST/N/

(C is replaced by the erroneous character, V is replaced by the object name, N is replaced by the namelist group name).

  INTEGER,PARAMETER :: IOERR_EXPECTED_RPAREN
Expected ')' but found 'C' in input for object V of NAMELIST/N/

(C is replaced by the erroneous character, V is replaced by the object name, N is replaced by the namelist group name).

  INTEGER,PARAMETER :: IOERR_SUBSCRIPT_OUT_OF_RANGE
Subscript (I) out of range in input for object V of NAMELIST/N/

(I is replaced by the erroneous subscript value, V is replaced by the object name, N is replaced by the namelist group name).

  INTEGER,PARAMETER :: IOERR_ZERO_SIZE_INPUT
Array section has zero size in input for object V of NAMELIST/N/

(V is replaced by the object name, N is replaced by the namelist group name).

  INTEGER,PARAMETER :: IOERR_ZERO_STRIDE
Section stride has value zero in input for object V of NAMELIST/N/

(V is replaced by the object name, N is replaced by the namelist group name).

  INTEGER,PARAMETER :: IOERR_NO_NAMELIST_GROUP_NAME
Missing namelist group name in input of NAMELIST/N/

(N is replaced by the namelist group name).

  INTEGER,PARAMETER :: IOERR_INPUT_LIST_TOO_BIG
Input list bigger than record length in unformatted READ on unit N

(N is replaced by the unit number).

  INTEGER,PARAMETER :: IOERR_RECORD_TOO_SHORT
Record too short for format requirement and PAD='NO' on unit N

(N is replaced by the unit number).

  INTEGER,PARAMETER :: IOERR_CORRUPT_UNFORMATTED_FILE
Unformatted data file open on unit N is corrupt

(N is replaced by the unit number).

  INTEGER,PARAMETER :: IOERR_TRUNCATE_FAILED
File truncation on unit N failed

(N is replaced by the unit number).

  INTEGER,PARAMETER :: IOERR_RW_AFTER_ENDFILE
READ/WRITE attempted after ENDFILE on unit N

(N is replaced by the unit number).

  INTEGER,PARAMETER :: IOERR_INTEGER64_TOO_BIG
Input value too large for 64-bit integer

  INTEGER,PARAMETER :: IOERR_NO_FILE_WITH_REPLACE
No FILE= specifier with STATUS='REPLACE

  INTEGER,PARAMETER :: IOERR_RECL_LE_ZERO
Invalid value for RECL= specifier (must be positive)

  INTEGER,PARAMETER :: IOERR_END_OF_DIRECT_ACCESS
READ beyond end of direct access file on unit N

(N is replaced by the unit number).

  INTEGER,PARAMETER :: IOERR_REAL_INPUT_OVERFLOW
Floating overflow on real number input

Notes

The source code for this module may be found in the NAGWare library directory (usually /usr/local/NAGWare).

See Also

f95(1), nag_modules(3).

Bugs

Please report any bugs found to "support@nag.co.uk" or "infodesk@nag.com", along with any suggestions for improvements.